package cn.seaboot.admin.reverse.bean;


import io.swagger.v3.oas.annotations.media.Schema;

import javax.validation.constraints.NotNull;
import javax.validation.constraints.Size;
import java.io.Serializable;
import java.util.List;

/**
 * POJO
 * MySQL表 [t_db_data_tables]
 *
 * @author Mr.css 2018年8月11日 上午10:18:10
 */
@Schema(description = "MySQL表 [t_db_data_tables] 实体类")
public class DataTable implements Serializable {
    private static final long serialVersionUID = 8973556968891291332L;
    /**
     * 表目录
     */
    @NotNull
    @Size(max = 512)
    @Schema(description = "表空间")
    private String tableCatalog;
    /**
     * 所属数据库
     */
    @NotNull
    @Size(max = 64)
    @Schema(description = "所属数据库")
    private String tableSchema;
    /**
     * 表名
     */
    @NotNull
    @Size(max = 64)
    @Schema(description = "表名")
    private String tableName;
    /**
     * 表描述
     */
    @NotNull
    @Size(max = 2048)
    @Schema(description = "表描述")
    private String tableComment;

    private List<DataColumn> columns;

    public String getTableSchema() {
        return tableSchema;
    }

    public void setTableSchema(String tableSchema) {
        this.tableSchema = tableSchema;
    }

    public String getTableName() {
        return tableName;
    }

    public void setTableName(String tableName) {
        this.tableName = tableName;
    }

    public String getTableCatalog() {
        return tableCatalog;
    }

    public void setTableCatalog(String tableCatalog) {
        this.tableCatalog = tableCatalog;
    }

    public String getTableComment() {
        return tableComment;
    }

    public void setTableComment(String tableComment) {
        this.tableComment = tableComment;
    }

    public List<DataColumn> getColumns() {
        return columns;
    }

    public void setColumns(List<DataColumn> columns) {
        this.columns = columns;
    }

    @Override
    public String toString() {
        return "DataTable{" +
                "tableCatalog='" + tableCatalog + '\'' +
                ", tableSchema='" + tableSchema + '\'' +
                ", tableName='" + tableName + '\'' +
                ", tableComment='" + tableComment + '\'' +
                ", columns=" + columns +
                '}';
    }
}
